package org.example.score.mapper;

import org.apache.ibatis.annotations.Mapper;
import org.example.score.domain.*;

import java.util.List;

@Mapper
public interface CalculateScoreMapper {
    List<String> getAllMajorCode(String year);

    Double getMax(String majorCode, String year,String tableName,String field);
    Double getMin(String majorCode, String year,String tableName,String field);

    Double getZfMax(String tableName,String majorCode, String year);
    Double getZfMin(String tableName,String majorCode, String year);
    void setScore0(String tableName,String majorCode, String year);
    void setScore1(String tableName,String majorCode, String year);

    List<SchoolMajor> getSchoolMajorXnZf(String majorCode, String tableName, String year);
    List<SchoolMajor> getSchoolMajorZyZf(String majorCode, String tableName, String year);

    void setScoreXn(String tableName,String majorCode, String year,List<SchoolMajor> schoolMajors);
    void setScoreZy(String tableName,String majorCode, String year,List<SchoolMajor> schoolMajors);

    //转专业
    List<Zzyqk> getZzyqk(String majorCode, String year);
    Double getZzyMax(String majorCode, String year);
    Double getZzyMin(String majorCode, String year);
    void setZzyqkScore(String majorCode, String year, List<Zzyqk> zzyqks);
    //教学水平 培训进修情况
    List<JxspPxjxqk> getJxspPxjxqk(String majorCode, String year);
    void setJxspPxjxqk(String year, List<JxspPxjxqk> pxjxqks);
    // 教育教学研究与改革项目
    List<JxspJyjxyjyggxm> getJyjxyjyggxms(String majorCode, String year);
    void setJxspJyjxyjyggxm(String year, List<JxspJyjxyjyggxm> jyjxyjyggxms);
//    实习实践实训基地情况
    List<SxjdSxsjsxjdqk> getSxjdSxsjsxjdqk(String majorCode, String year);
    Double getSxjdqkJdzsMax(String majorCode, String year);
    Double getSxjdqkJdzsMin(String majorCode, String year);
    void setSxjdSxsjsxjdqk(String year,List<SxjdSxsjsxjdqk> sxjdSxsjsxjdqks);

    //参加创新创业训练计划
    List<JydhCjcxcyxljh> getJydhCjcxcyxljh(String majorCode, String year);
    void setJydhCjcxcyxljh(String year,List<JydhCjcxcyxljh> jydhCjcxcyxljhs);

    //参加教师科研情况
    List<JyhdCjjskyqk> getJyhdCjjskyqk(String majorCode, String year);
    void setJyhdCjjskyqk(String year, List<JyhdCjjskyqk> jyhdCjjskyqks);

    //本科生交流情况
    List<JyhdBksjlqk> getBksjlqk(String majorCode, String year);

    void setJyhdBksjlqk(String year, List<JyhdBksjlqk> jyhdBksjlqks);

    //教师指导学生毕业综合训练情况
    List<ByxlJszdxsbyzhxlqk> getByxlJszdxsbyzhxlqk(String majorCode, String year);

    void setByxlJszdxsbyzhxlqk(String year, List<ByxlJszdxsbyzhxlqk> jszdxsbyzhxlqks);

    //学生发表论文情况
    List<XxcxFblwqk> getFblwqk(String majorCode, String year);
    void setXxcxFblwqk(String year, List<XxcxFblwqk> fblwqks);

    //        专业实验教学校内场所情况
    List<Zysyjxxncsqk> getZysyjxxncsqk(String majorCode, String year);

    void setZysyjxxncsqk(String year, List<Zysyjxxncsqk> zysyjxxncsqks);
    //科研水平 发表论文情况
    List<KyspFblwqk> getKyspFblwqk(String majorCode, String year);
    void setKyspFblwqk(String year, List<KyspFblwqk> fblwqks);

    //科研水平 主持科研项目
    List<KyspZckyxm> getZckyxm(String majorCode, String year);
    void setKyspZckyxmm(String year, List<KyspZckyxm> zckyxms);

    //科研水平 专利专著
    List<KyspZlzz> getZlzz(String majorCode, String year);
    void setKyspZlzz(String year, List<KyspZlzz> zlzzs);

}
